<?php

declare(strict_types=1);

namespace App\Controller;

use App\Request\Video\VideoListRequest;
use App\Service\Video\VideoListService;
use App\Service\Video\V1_1_0\VideoListService as V1_1_0_VideoListService;
use Hyperf\HttpServer\Annotation\RequestMapping;
use Hyperf\HttpServer\Annotation\Controller;

/**
 * @Controller(prefix="video")
 */
class VideoController extends AbstractController
{
    /**
     *
     * @param VideoListRequest $request
     * @param VideoListService $service
     * @return array|mixed
     * @RequestMapping(path="list", methods="post")
     */
    public function list(VideoListRequest $request, VideoListService $service)
    {
        $request->validated();

        return $service->response();
    }

    /**
     *
     * @param VideoListRequest $request
     * @param V1_1_0_VideoListService $service
     * @return array|mixed
     * @RequestMapping(path="v1_1_0/list", methods="post")
     */
    public function list_V1_1_0(VideoListRequest $request, V1_1_0_VideoListService $service)
    {
        $request->validated();

        return $service->response();
    }
}
